// src/api/index.js
import request from "@/api/axios";



// 示例：获取商品信息
// 导出一个函数，用于获取产品列表
export function getListProduct(params: any): Promise<any> {
  // 发送一个get请求，获取产品列表
  return request({
    url: "api/app/product/product",
    method: "get",
    params: params,
  });
}
// 导出一个函数DeleteReservation，用于删除商品信息
export function DeleteProduct(params: any): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/${params}/all-product`,
    method: "delete",
  });
}
// 导出一个函数DeleteReservation，用于更新商品信息
export function UpdatefindProduct(params: any): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/all-product`,
    method: "put",
    data: params

  });
}
// 导出一个函数DeleteReservation，用于更新商品状态
export function UpdateProductstatues(params: any, statues: number): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/${params}/product-statues?statues=${statues}`,
    method: "put",
  });
}
//根据编号查询商品信息
export function getProduct(params: any): Promise<any> {
  // 发送一个get请求，获取产品列表
  return request({
    url: `api/app/product/${params}/product`,
    method: "get",
  });
}
// 导出一个函数DeleteReservation，用于添加预约信息
export function InsertReservation(params: any): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/all-reservation`,
    method: "post",
    data: params
  });
}
// 导出一个函数DeleteReservation，用于更新商品信息
export function UpdateReservation(params: any): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/all-reservation`,
    method: "put",
    data: params

  });
}
//根据编号查询预约信息
export function getReservation(params: any): Promise<any> {
  // 发送一个get请求，获取产品列表
  return request({
    url: `api/app/product/${params}/reservation`,
    method: "get",
  });
}
// 导出一个函数DeleteReservation，用于删除预约信息
export function DeleteReservation(params: any): Promise<any> {
  // 发送一个delete请求，请求的url为/api/app/product/${params}/all-reservation
  return request({
    url: `api/app/product/${params}/all-reservation`,
    method: "delete",
  });
}
// 示例：添加商品信息
// 导出一个函数，用于插入产品信息
export function InsertProduct(params: any): Promise<any> {
  // 发送一个post请求，url为api/app/product/all-product，参数为params
  return request({
    url: "api/app/product/all-product",
    method: "post",
    data: params,
  });
}
//获取预约信息
// 导出一个函数，用于获取预约列表
export function getListReservation(params: any): Promise<any> {
  // 发送请求，获取预约列表
  return request({
    url: "api/app/product/reservation",
    method: "get",
    params: params,
  });
}
//更改预约信息状态
// 导出一个函数，用于获取预约列表
export function UpdateReservationstate(params: any, state: number): Promise<any> {
  // 发送请求，获取预约列表
  return request({
    url: `api/app/product/${params}/reservation-statues?statues=${state}`,
    method: "put",
  });
}
//新增商品标签
export function InsertProductLabel(params: any): Promise<any> {
  // 发送一个post请求，url为api/app/product/all-product，参数为params
  return request({
    url: "api/app/product/product-label",
    method: "post",
    data: params,
  });
}
//根据查询商品标签信息
export function getProductLabel(): Promise<any> {
  // 发送一个get请求，获取产品列表
  return request({
    url: `api/app/product/product-label`,
    method: "get",
  });
}
//新增商品标签
export function InsertSort(params: any): Promise<any> {
  // 发送一个post请求，url为api/app/product/all-product，参数为params
  return request({
    url: "api/app/product/all",
    method: "post",
    data: params,
  });
}
//根据查询分类管理息
export function getSort(): Promise<any> {
  // 发送一个get请求，获取产品列表
  return request({
    url: `api/app/product`,
    method: "get",
  });
}
//添加房价
// 导出一个函数addroomMoney，用于添加房间金额
export function addroomMoney(form: any): Promise<any> {
  // 发送一个post请求，url为api/app/room-money/all，data为form
  return request({
    url: "api/app/room-money/all",
    method: "post",
    data: form,
  });
}
//显示房价
// 导出一个函数，用于获取房间金额
export function getroomMoney(params: any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "api/app/room-money",
    method: "get",
    params: params,
  });
}
//修改房价
// 导出一个函数updromMony，用于更新房间金额
export function updromMony(data: any, id: any): Promise<any> {
  // 发送一个put请求，url为api/app/room-money?Id=${id}，data为传入的data参数
  return request({
    url: `api/app/room-money?Id=${id}`,
    method: "put",
    data: data,
  });
}
//删除房价
// 导出一个函数，用于删除指定id的货币
export function delromMony(id: any): Promise<any> {
  // 发送一个delete请求，删除指定id的货币
  return request({
    url: `DeleteAsync?id=${id}`,
    method: "delete",
  });
}
//房型下拉框
// 导出一个函数，用于获取房间类型
export function getroomType(): Promise<any> {
  // 发送一个get请求，获取房间类型
  return request({
    url: "api/app/room-type/select",
    method: "get",
  });
}
//修改房价状态
// 导出一个函数，用于更新监控状态
export function updromMonystate(state: any): Promise<any> {
  // 发送一个put请求，更新监控状态
  return request({
    url: `UpdateStateAsync?id=${state}`,
    method: "put",
  });
}

// 导出一个名为Login的函数，该函数接收两个参数：UserName和UserPwd，返回一个Promise对象
export function Login(userName: string, userPwd: string): Promise<any> {
  // 发送一个get请求，请求的url为api/Login，请求的数据为UserName和UserPwd
  return request({
    url: "api/v2/users/Login",
    method: "get",
    params: {
      userName: userName,
      userPwd: userPwd,
    },
  });
}


// 导出一个函数，用于获取验证码
export function getCaptcha(): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: "api/v1/auth/captcha",
    method: "get",
  });
}
//房型显示
export function getroomTypelist(params: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: "api/app/room-type",
    method: "get",
    params: params

  });
}
//添加房型
export function addroomType(data: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: "CreateAllAsync",
    method: "post",
    data: data,
  });
}
//修改房间类型
// 导出一个函数，用于更新房间类型
export function updroomType(data: any, id: any): Promise<any> {

  // 发送请求，更新房间类型
  return request({
    // 请求的URL，包含id参数
    url: `UpdateAllAsync?Id=${id}`,
    // 请求的方法为put
    method: "put",
    // 请求的数据为传入的data参数
    data: data,
  });
}
//删除单个房型
export function delroomType(id: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: `DeleteOneAsync?Id=${id}`,
    method: "delete",
  });
}
//删除多个房型
export function delroomTypes(id: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: `DeleteAllAsync?Id=${id}`,
    method: "delete",
  });
}
//添加住宿设置
export function addstay(data: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: "api/app/stay/all",
    method: "post",
    data: data
  });
}

// 导出一个函数，用于获取房间号列表
export function getroomNumlist(id: any): Promise<any> {
  // 发送请求，获取房间号列表
  return request({
    url: `api/app/room-num?Id=${id}`,
    method: "get",
    params: id
  });
}
// 导出一个函数AddroomNum，参数为RoomNumber，返回一个Promise对象
export function AddroomNum(RoomNumber: any): Promise<any> {
  // 发送一个post请求，url为api/app/room-num/all，参数为RoomNumber
  debugger
  return request({
    url: "api/app/room-num/all",
    method: "post",
    data: RoomNumber
  });
}
// 导出一个函数，用于获取住宿记录
export function GetStayRecord(data: any): Promise<any> {
  // 发送请求，获取验证码
  return request({
    url: `api/app/stay-record/stay-record`,
    method: "get",
    data: data,
  });
}
//添加房号
export function addroomnum(data: any): Promise<any> {
  return request({
    url: "CreateAllAsyncs",
    method: "post",
    data: data,
  });
}
//显示房号
export function listroomnum(name: any, num: any, state: any): Promise<any> {
  return request({
    url: "GetAllAsyncs",
    method: "get",
    params: {
      roomTypeName: name,
      roomNum: num,
      roomNumberStatues: state
    }
  });
}
//修改房号
export function updroomnum(data: any, id: any): Promise<any> {
  return request({
    url: `UpdateAllAsyncs?id=${id}`,
    method: "put",
    data: data,
  });
}
//单个修改房号状态
export function updromnumstate(id: any): Promise<any> {
  return request({
    url: `UpdateOneStateAsyncs?Id=${id}`,
    method: "put",
  });
}
//批量修改房号状态
export function updromnumstates(id: any, state: any): Promise<any> {
  return request({
    url: `UpdateStateAsyncs?Id=${id}&state=${state}`,
    method: "put",
  });
}
//删除单个房号
export function delroomnum(id: any): Promise<any> {
  return request({
    url: `DeleteOneAsyncs?Id=${id}`,
    method: "delete",
  });
}
//删除多个房号
export function delroomnums(id: any): Promise<any> {
  return request({
    url: `DeleteAllAsyncs?Id=${id}`,
    method: "delete",
  });
}
//获取客户列表
export function getCientList(params: any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "/GetCientList",
    method: "get",
    params: params,
  });
}
//更改客户状态
export function UpdateCientStates(id: any, statues: number): Promise<any> {
  debugger;
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `/UpdateCientStatuesAsync?id=${id}&statues=${statues}`,
    method: "put",

  });
}
export const ExportCientListExcel = (params:any) => {
  return request({
    url: '/api/app/cient/export-excel',
    method: 'post',
    data: params,
    responseType: 'blob', // 关键配置
    headers: {
      'Content-Type': 'application/json'
    }
  })
}
//查询会员权益列表
export function getMembershipbenefitsList(): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "/api/app/cient/membershipbenefits-list",
    method: "get",
  });
}
//新增会员卡权益
export function inserttMembershipbenefits(params:any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `/InsertMembershipbenefits`,
    method: "post",
   params:params
  });
}
//获取会员卡
export function getMembershipcard(): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "/GetMembershipcard",
    method: "get",
  });
}
//新增会员卡
export function insertMembershipcard(params:any): Promise<any> {
  debugger;
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `/InsertMembershipcard`,
    method: "post",
   params:params
  });
}


export function getmenutype(): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `api/v2/Menus/GetmenuType`,
    method: "get",
  });
}

export function getMenulist(): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "api/v2/Menus/Getmenu",
    method: "get",
  });
}
export function addMenulist(data:any): Promise<any> {
  // 发送一个post请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "api/v2/Menus/addmenu",
    method: "post",
    data:data
  });
}
export function addmenutypelist(data:any): Promise<any> {
  // 发送一个post请求，请求地址为api/app/room-money，参数为params
  return request({
    url: "api/v2/Menus/addmenuType",
    method: "post",
    data:data
  });
}

export function FanMenu(id:any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params

  return request({
     url: `api/v2/Menus/FanMenu?id=${id}`,
   // url:"api/v2/Menus/FanMenu?id=42dd7895-4c19-76b4-be4b-3a18a0c08ac6",
    method: "get",
  });
}

export function UpdMenu(id:any,data:any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `api/v2/Menus/UpdMenu?id=${id}`,
    method: "put",
    data: data,
  });
}
export function DelMenu(id:any): Promise<any> {
  // 发送一个get请求，请求地址为api/app/room-money，参数为params
  return request({
    url: `api/v2/Menus/DelMenu?id=${id}`,
    method: "delete",
  });
} 